Walk back ABI breaking changes (#76)
authorKeno Fischer <kfischer+github@college.harvard.edu>
Wed, 13 Jul 2016 14:41:13 +0000 (10:41 -0400)
committerSteven G. Johnson <stevenj@mit.edu>
Wed, 13 Jul 2016 14:41:13 +0000 (10:41 -0400)
utf8proc.c
utf8proc.h

index 562f778f4e2eb625e059f36e8dbb4245ad3ec934..b479750d5a3b2baf9edd40973a3c419285bfa6eb 100644 (file)
@@ -308,7 +308,7 @@ static utf8proc_bool grapheme_break_extended(int lbc, int tbc, utf8proc_int32_t
   return break_permitted;
 }
 
-UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break_stateful(
     utf8proc_int32_t c1, utf8proc_int32_t c2, utf8proc_int32_t *state) {
 
   return grapheme_break_extended(utf8proc_get_property(c1)->boundclass,
@@ -316,6 +316,12 @@ UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
                                  state);
 }
 
+
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+    utf8proc_int32_t c1, utf8proc_int32_t c2) {
+  return utf8proc_grapheme_break_stateful(c1, c2, NULL);
+}
+
 static utf8proc_int32_t seqindex_decode_entry(const utf8proc_uint16_t **entry)
 {
   utf8proc_int32_t entry_cp = **entry;
index 4e033e7a7b442dad199cef403e0b61ebdd7b94e9..af4c81d215d2ee975149cbe2640b20eeeecd95c1 100644 (file)
@@ -527,12 +527,19 @@ UTF8PROC_DLLEXPORT utf8proc_ssize_t utf8proc_reencode(utf8proc_int32_t *buffer,
  *              GB10/12/13 which require this state will not be applied, essentially
  *              matching the rules in Unicode 8.0.0.
  *
- * @warning If the state parameter is used, `utf8proc_grapheme_break` must be called
- *          IN ORDER on ALL potential breaks in a string.
+ * @warning If the state parameter is used, `utf8proc_grapheme_break_stateful` must
+ *          be called IN ORDER on ALL potential breaks in a string.
  */
-UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break_stateful(
     utf8proc_int32_t codepoint1, utf8proc_int32_t codepoint2, utf8proc_int32_t *state);
 
+/**
+ * Same as @ref utf8proc_grapheme_break_stateful, except without support for the
+ * Unicode 9 additions to the algorithm. Supported for legacy reasons.
+ */
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+    utf8proc_int32_t codepoint1, utf8proc_int32_t codepoint2);
+
 
 /**
  * Given a codepoint `c`, return the codepoint of the corresponding